package com.swsc.solarverse.service.sys;

import com.swsc.solarverse.common.model.PageInfo;
import com.swsc.solarverse.common.mybatis.MybatisService;
import com.swsc.solarverse.dao.entity.sys.CorporationStationDO;
import com.swsc.solarverse.model.CorporationQueryBO;
import com.swsc.solarverse.model.CorporationStationBO;

import java.util.List;

/**
 * <p>
 * 电站信息表 服务类
 * </p>
 *
 * @author AutoGenerator
 * @since 2022-02-24
 */
public interface ICorporationStationService extends MybatisService<CorporationStationDO> {
    /**
     * 查询用户关联机构
     * @param queryBo
     * @return
     */
    List<CorporationStationBO> listUserCorporationStations(CorporationQueryBO queryBo);

    /**
     * 查询角色关联机构
     * @param queryBo
     * @return
     */
    List<CorporationStationBO> listRoleCorporationStations(CorporationQueryBO queryBo);

    /**
     * 查询组织机构
     * @param queryBo
     * @return
     */
    List<CorporationStationBO> listCorporationStations(CorporationQueryBO queryBo);

    /**
     * 获取组织机构
     * @param tenantNo
     * @param organNo
     * @return
     */
    CorporationStationBO getCorporationStation(Integer tenantNo, Integer organNo);

    /**
     * 校验并返回
     * @param tenantNo
     * @param organNo
     * @return
     */
    CorporationStationBO checkCorporationStation(Integer tenantNo, Integer organNo);

    PageInfo<CorporationStationBO> page(CorporationQueryBO queryBo, Integer pageNo, Integer pageSize);

    CorporationStationDO getAndCheckRawDo(Integer organNo);
}
